﻿using Bridge.Quartz.MUI.Model;
using Bridge.Quartz.MUI.Service;
using Quartz;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace Bridge.Quartz.MUI.Tools
{
    public interface IQuartzHandle
    {
        Task<ResultQuartzData> AddJob(QuartzTask taskOptions);
        Task<List<QuartzTask>> GetJobs();
        Task InitJobs();
        Task<ResultQuartzData> IsQuartzJob(string taskName, string groupName);
        ResultQuartzData IsValidExpression(string cronExpression);
        Task<ResultQuartzData> Pause(QuartzTask taskOptions);
        Task<ResultQuartzData> Remove(QuartzTask taskOptions);
        Task<ResultQuartzData> Run(QuartzTask taskOptions);
        Task<ResultQuartzData> Start(QuartzTask taskOptions);
        Task<ResultQuartzData> Update(QuartzTask taskOptions);
    }
}